import os

# 方法一
# 获取指定路径的文件夹大小（单位：KB）
def get_file_size(dir1):
    # 获取被复制目录中的所有文件信息（包含文件和目录）
    dlist = os.listdir(dir1)
    filesize=0
    # 遍历所有文件，并取得文件大小
    for f in dlist:
        # 为遍历的文件添加目录路径（f为文件名）
        file1 = os.path.join(dir1,f) # 源
        print('file:',file1)
        # 判断是否是文件，得到文件大小
        if os.path.isfile(file1):
            filesize+=os.path.getsize(file1)

        # 判断是否是目录（文件夹）
        if os.path.isdir(file1):
            # 递归调用自己
            get_file_size(file1)
    return filesize
foldersize=get_file_size('C:\pythonlearn\数据分析\pythonprelearn\ws')
print('foldersize=',foldersize,'KB')


# 方法二
# 获取指定路径的文件夹大小（单位：KB）
def get_doc_real_size(p_doc):
    size = 0.0
    for root, dirs, files in os.walk(p_doc):
        size += sum([os.path.getsize(os.path.join(root, file)) for file in files])
    size = round(size, 2)
    return size
foldersize=get_doc_real_size('C:\pythonlearn\数据分析\pythonprelearn\ws')
print('foldersize=',foldersize,'KB')

